package it.ap.sa.acqua.tank.service;

import java.util.List;

import org.springframework.stereotype.Service;

import it.ap.sa.acqua.dao.beans.LivestockBean;
import it.ap.sa.acqua.dao.beans.SearchTankFilter;
import it.ap.sa.acqua.dao.beans.TTankBean;
import it.ap.sa.acqua.dao.beans.TTankTypeAlertBean;

/**
 * @author Alessandro Paolillo
 */
@Service
public interface ITankService {

	public TTankBean getTank(Long id) throws Exception;
	
	public List<TTankBean> getTanks( ) throws Exception;
	
	public TTankBean saveTank( TTankBean tankBean ) throws Exception;
	
	public void deleteTank( TTankBean tankBean ) throws Exception;
	
	public List<TTankBean> searchTank( SearchTankFilter searchTankFilter) throws Exception;
	
	public Long searchCountTank( SearchTankFilter searchTankFilter) throws Exception;
	
	public List<TTankBean> myTanks( SearchTankFilter searchTankFilter) throws Exception;
	
	public Long myCountTank( SearchTankFilter searchTankFilter) throws Exception;
	
	public List<TTankTypeAlertBean> getTankTypes( ) throws Exception;
	
	public List<LivestockBean> getLivestock( long idTank ) throws Exception;
	
	public void saveLivestock( LivestockBean livestockBean ) throws Exception;
	
	public void deleteLivestock( LivestockBean livestockBean ) throws Exception;
	
}
